package com.itheima.service;

import com.alibaba.dubbo.config.annotation.Service;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.itheima.dao.CheckItemDao;
import com.itheima.entity.PageResult;
import com.itheima.entity.QueryPageBean;
import com.itheima.pojo.CheckItem;
import org.springframework.beans.factory.annotation.Autowired;

import java.util.List;

@Service
public class CheckItemServiceImpl implements CheckItemService {


	@Autowired
	CheckItemDao checkItemDao;

	@Override
	public void add(CheckItem checkItem) {

		checkItemDao.add(checkItem);

	}

	@Override
	public PageResult findPage(QueryPageBean queryPageBean) {


		PageHelper.startPage(queryPageBean.getCurrentPage(), queryPageBean.getPageSize());

		Page<CheckItem> pages = checkItemDao.findByCondition(queryPageBean.getQueryString());


		return new PageResult(pages.getTotal(), pages);
	}

	@Override
	public CheckItem findById(Integer id) {


		return checkItemDao.findById(id);
	}

	@Override
	public void edit(CheckItem checkItem) {

		checkItemDao.edit(checkItem);
	}

	@Override
	public void delById(Integer id) {
		long count = checkItemDao.findCountById(id);
		if (count > 0) {
			//说明被关联
			throw new RuntimeException("该检查项被检查组关联，不能删除！！");
		} else {
			checkItemDao.delById(id);
		}
	}

	@Override
	public List<CheckItem> findAll() {


		return checkItemDao.findAll();
	}
}
